package org.agpsoft.datareceiverinfrastructure.recorder;

import org.agpsoft.datareceiverinfrastructure.common.IElementInitiator;
import org.agpsoft.datareceiverinfrastructure.common.RawData;
import org.agpsoft.datareceiverinfrastructure.datasource.IDataAccessor;
import org.agpsoft.datareceiverinfrastructure.exception.DataReceiverRecordException;

/**
 * Interface for recording raw data, this interface is attached with {@link IDataAccessor} implementation
 * @author Ali Gokalp Peker
 */
public interface IRawDataRecorder extends IElementInitiator{
	/**
	 * Records data, throws {@link DataReceiverRecordException} on record error
	 * @param rawData Raw data instance to record
	 * @throws DataReceiverRecordException
	 */
	public void recordData( RawData rawData) throws DataReceiverRecordException;
}
